<?php

/**
 * confirmacion actions.
 *
 * @package    comande
 * @subpackage confirmacion
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class confirmacionActions extends sfActions
{
 /**
  * Executes index action
  *
  * @param sfRequest $request A request object
  */

   public function preExecute()
  {
     if(sfConfig::get('app_domain')=='server')
     {
          $simpleSAMLAuth = new SimpleSAML_Auth_Simple('default-sp');
          if (!$simpleSAMLAuth->isAuthenticated())
          {
               return $this->redirect('saml/logout');
          }
     }    

  }
  
  public function executeIndex(sfWebRequest $request)
  {
      
  }
  

  public function executeAsociarcuenta(sfWebRequest $request)
  {

     $simpleSAMLAuth = new SimpleSAML_Auth_Simple('default-sp');
     $attributes = $simpleSAMLAuth->getAttributes();
     if ($simpleSAMLAuth->isAuthenticated())
     {
   
           $querydata = http_build_query(array(             
                                         'token'    =>  md5("esferadigital"),
                                         'email' => $attributes['email'][0],
                                         'plataforma' => "2" ) );   
          $servicio_practil   = 'http://practil.com/json_servicio_usuario/asociar_plataforma?'.$querydata;
          $respuesta_servicio = file_get_contents($servicio_practil);
          $json               = json_decode($respuesta_servicio);
          if($json->{'success'}) // si es true ---> se ejecuto correctamente
          {

             //registro localmente al usuario
             //obtengo los datos basicos para registrar al usuario .
             $new_usuario_comande = new Usuario();
             $new_usuario_comande->setNombres($attributes['nombre'][0]);
             $new_usuario_comande->setApellidos($attributes['apellido'][0]);
             $new_usuario_comande->setEmail($attributes['email'][0]);
             $new_usuario_comande->setPassword($attributes['password'][0]);
             $new_usuario_comande->setIdPaquetePractil(0);
             $new_usuario_comande->setIdPractil($attributes['id'][0]);
             $new_usuario_comande->setEstado(1);
             $new_usuario_comande->save();

             $this->getUser()->setAttribute('ses_user_id_practil',$attributes['id'][0]);
             $this->getUser()->setAttribute('ses_user_id',$new_usuario_comande->getId());
             $this->getUser()->setAttribute('ses_user_nombre',$new_usuario_comande->getNombres());
             $this->getUser()->setAttribute('ses_user_ape',$new_usuario_comande->getApellidos());
             $this->getUser()->setAttribute('ses_user_correo',$new_usuario_comande->getEmail());
             $this->getUser()->setAttribute('ses_currentUserObject',$new_usuario_comande);
             
             $this->redirect('confirmacion/index');


          }
    	

      }
      else
      {
      	
      	     return $this->redirect('@homepage');

      }


  }
}
